home *** CD-ROM | disk | FTP | other *** search
/ Tiger Disk 9 / Tiger_Disk_009_19xx_Tiger-Crew-Disk_de_Side_B.d64 / -input -routine- (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  4KB  |  129 lines

  1. 29210 poke53280,6:poke53281,6
  2. 29220 rem anleitung
  3. 29230 print"[147]unterprogramm 'input at'"
  4. 29240 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  5. 29250 print"in den 3 folgenden beispielen wird die"
  6. 29260 print"anwendung des unterprogramms erklaert."
  7. 29270 print"anschliessend koennen sie per knopfdruck";
  8. 29280 print"alle beispiele loeschen, damit sich im "
  9. 29290 print"speicher nur noch das unterprogramm"
  10. 29300 print"befindet."
  11. 29310 print"dieser vorgang ist jedoch erst nach"
  12. 29320 print"der meldung 'ready' beendet[160]!!"
  13. 29330 print"sie koennen dann entweder ihr eigenes"
  14. 29340 print"programm dahinter oder davor schreiben,"
  15. 29350 print"oder es mit hilfe eines merge-programms"
  16. 29360 print"an ein bereits geschriebenes programm"
  17. 29370 print"anhaengen!"
  18. 29380 print"die zahlen vor den beispielen stellen"
  19. 29390 print"eine beliebige zeilennummer in ihrem"
  20. 29400 print"programm dar!"
  21. 29410 q1=24:q2=14:gosub30400:print"[158]b[146]eispiele[154]";
  22. 29420 geti$:ifi$=""then29420
  23. 29430 ifi$<>"b"then29420
  24. 29440 print"[147]1.beisp.: anforderung einer zahl:"
  25. 29450 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  26. 29460 print"120 q1=22:q2=15:q3=6:q7=1:gosub30000"
  27. 29470 print"bedeutung:"
  28. 29480 print"q1 = zeile  der eingabe"
  29. 29490 print"q2 = spalte der eingabe"
  30. 29500 print"q3 = maximale zeichenzahl
  31. 29510 [153]"q7 = 1 wenn nur zahlen zulaessig
  32. 29520 print"was daraufhin passiert, sehen sie in"
  33. 29530 print"zeile 12 spalte 15."
  34. 29540 print"machen sie jetzt die geforderte eingabe"
  35. 29550 print"und druecken sie anschliessend 'return'"
  36. 29560 q1=22:q2=15:q3=6:q7=1:gosub30000"
  37. 29570 q1[178]18:q2[178]0:[141]30400
  38. 29580 [153]"ihre eingabe steht dann im string q4$."
  39. 29590 [153]"q4$ = "q4$"cont"
  40. 29600 q1[178]24:q2[178]3:[141]30400:[153]"sysnwaitaechstes beisp.  gwaitleiches beisp.cont";
  41. 29610 [161]i$:[139]i$[178]""[167]29610
  42. 29620 [139]i$[178]"g"[167]29440
  43. 29630 [139]i$[179][177]"n"[167]29610
  44. 29640 [153]"load2.beisp.: anforderung eines strings"
  45. 29650 [153]"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  46. 29660 [153]"120 q1=5:q2=26:q3=6:q7=0:gosub30000"
  47. 29670 [153]"bedeutung:"
  48. 29680 [153]"q1 = zeile  der eingabe"
  49. 29690 [153]"q2 = spalte der eingabe"
  50. 29700 [153]"q3 = maximale zeichenzahl
  51. 29710 print"q7 = 0 wenn alle zeichen zulaessig"
  52. 29720 print"was daraufhin passiert, sehen sie in"
  53. 29730 print"zeile 5 spalte 26."
  54. 29740 print"machen sie jetzt die geforderte eingabe"
  55. 29750 print"und druecken sie anschliessend 'return'"
  56. 29760 q1=5:q2=26:q3=10:q7=0:gosub30000"
  57. 29770 q1[178]19:q2[178]0:[141]30400
  58. 29780 [153]"ihre eingabe steht dann im string q4$."
  59. 29790 [153]"q4$ = "q4$"cont"
  60. 29800 q1[178]24:q2[178]3:[141]30400:[153]"sysnwaitaechstes beisp.  gwaitleiches beisp.cont";
  61. 29810 [161]i$:[139]i$[178]""[167]29810
  62. 29820 [139]i$[178]"g"[167]29640
  63. 29830 [139]i$[179][177]"n"[167]29810
  64. 29840 [153]"load3.beisp.: drucken an beliebiger stelle"
  65. 29850 [153]"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  66. 29860 [153]"140 q1=22:q2=5:gosub30000
  67. 29870 print"150 print"chr$(34);"test";chr$(34)
  68. 29880 print"bedeutung:"
  69. 29890 print"q1 = zeile  des drucks"
  70. 29900 print"q2 = spalte des drucks"
  71. 29910 print"was daraufhin passiert, sehen sie in "
  72. 29920 print"zeile 21 und spalte 5. "
  73. 29930 print"das wort test wird in zeile 22 und "
  74. 29940 print"spalte 15 gedruckt."
  75. 29950 q1=21:q2=5:gosub30400:print"test"
  76. 29960 q1=24:q2=2:gosub30400:print"[158]l[146]oeschen der beispielprogrammzeilen";
  77. 29970 geti$:ifi$=""then29970
  78. 29980 ifi$<>"l"then29970
  79. 29990 goto50000
  80. 30000 rem ***** input at ***************
  81. 30010 q8=0:q9=0:qb=q1:qc=q2
  82. 30020 ifq1>-1thengosub30400
  83. 30030 q1=peek(214):q2=peek(211)
  84. 30040 forii=1toq3:print" ";:next
  85. 30050 gosub30400
  86. 30060 q5=0:q4$="":poke1024+40*q1+q2,191
  87. 30070 forii=631to640:pokeii,0:next
  88. 30080 q5=q5+1
  89. 30090 getq6$:ifq6$=""then30090
  90. 30100 ifasc(q6$)=34then30090
  91. 30110 ifasc(q6$)=32andq5<=1then30090
  92. 30120 ifasc(q6$)=13thenprint:goto30350
  93. 30130 ifasc(q6$)=20orasc(q6$)=157then30230
  94. 30140 ifq7=1then30170
  95. 30150 ifasc(q6$)<32orasc(q6$)>90then30090
  96. 30160 goto30280
  97. 30170 ifasc(q6$)>=48andasc(q6$)<=57then30280
  98. 30180 ifq8=1then30200
  99. 30190 ifasc(q6$)=46thenq8=1:goto30280
  100. 30200 ifq9=1then30220
  101. 30210 ifasc(q6$)=45andq5=1thenq9=1:goto30280
  102. 30220 goto30090
  103. 30230 ifq5<=1then30090
  104. 30240 q2=q2-1:gosub30400:q8$=mid$(q4$,q5-1,1):ifq8$="."thenq8=0
  105. 30250 ifq8$="-"thenq9=0
  106. 30260 print" ":gosub30400
  107. 30270 q4$=left$(q4$,q5-2):q5=q5-1:goto30090
  108. 30280 q4$=q4$+q6$
  109. 30290 print"";q6$:q2=q2+1:gosub30400
  110. 30300 ifq5<q3then30080
  111. 30310 q5=q3+1:getq6$:ifq6$=""then30310
  112. 30320 ifasc(q6$)=20orasc(q6$)=157then30230
  113. 30330 ifasc(q6$)=13thenprint:goto30350
  114. 30340 goto30310
  115. 30350 ifq4$<>""then30380
  116. 30360 ifqa=0then30000
  117. 30370 q1=qb:q2=qc:gosub30400:print" [146]";
  118. 30380 qa=0:q7=0
  119. 30390 return
  120. 30400 rem *** cursor positionieren *****
  121. 30410 poke214,q1:poke211,q2:sys58640
  122. 30420 return
  123. 50000 rem *** up zeilen loeschen *******
  124. 50010 qs=29200:qe=29990:kn=qs
  125. 50020 print"[147]";:ifkn=qethenfori=50000to50050step10:printi:next:goto50040
  126. 50030 kn=kn+10:print"[147]"kn:print"kn="kn":qe="qe":goto50020"
  127. 50040 poke631,19:fori=632to640:pokei,13:next:poke198,7:ifkn<>qethenend
  128. 50050 print"[154]":end
  129.